package com.css.crm.dao;

import java.util.List;

import com.css.crm.vo.CustomerServiceEventVo;

/**
 * Interface for DAO on table VP_CUST_SERV_EVENT
 * 
 * @author AIS
 */
public interface CustomerServiceEventDao extends BaseDao {

	/**
	 * Get all customer service event record by customer id
	 * 
	 * @param custId
	 *            Customer id to specific record to be retrieved
	 * @return List of customer service event record(s)
	 */
	List<CustomerServiceEventVo> getCustomerServiceEventByCustId(String custId);

	/**
	 * Create customer service event record
	 * 
	 * @param CustomerServiceEvent
	 *            CustomerServiceEventVo object
	 * @return Row count affected
	 */
	int insertCustomerServiceEvent(CustomerServiceEventVo customerServiceEvent);

	/**
	 * Update customer service event record
	 * 
	 * @param customerServiceEvent
	 *            Updated CustomerServiceEventVo object
	 * @return Row count affected
	 */
	int updateCustomerServiceEventByPK(CustomerServiceEventVo customerServiceEvent);

	/**
	 * Delete specific customer service event record by customer service id
	 * 
	 * @param custServId
	 *            Customer service id to specific record to be deleted
	 * @return Row count affected
	 */
	int deleteCustomerServiceEventByPK(Long custServEventId);

	/**
	 * Delete customer service event record(s) by customer id
	 * 
	 * @param custId
	 *            Customer id to specific record(s) to be deleted
	 * @return Row count affected
	 */
	int deleteCustomerServiceEventByCustId(String custId);
}
